home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / dppsv.z / dppsv
Text File  |  1996-03-14  |  4KB  |  133 lines

  1.  
  2.  
  3.  
  4. DDDDPPPPPPPPSSSSVVVV((((3333FFFF))))                                                            DDDDPPPPPPPPSSSSVVVV((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      DPPSV - compute the solution to a real system of linear equations  A * X
  10.      = B,
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE DPPSV( UPLO, N, NRHS, AP, B, LDB, INFO )
  14.  
  15.          CHARACTER     UPLO
  16.  
  17.          INTEGER       INFO, LDB, N, NRHS
  18.  
  19.          DOUBLE        PRECISION AP( * ), B( LDB, * )
  20.  
  21. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  22.      DPPSV computes the solution to a real system of linear equations
  23.         A * X = B, where A is an N-by-N symmetric positive definite matrix
  24.      stored in packed format and X and B are N-by-NRHS matrices.
  25.  
  26.      The Cholesky decomposition is used to factor A as
  27.         A = U**T* U,  if UPLO = 'U', or
  28.         A = L * L**T,  if UPLO = 'L',
  29.      where U is an upper triangular matrix and L is a lower triangular matrix.
  30.      The factored form of A is then used to solve the system of equations A *
  31.      X = B.
  32.  
  33.  
  34. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  35.      UPLO    (input) CHARACTER*1
  36.              = 'U':  Upper triangle of A is stored;
  37.              = 'L':  Lower triangle of A is stored.
  38.  
  39.      N       (input) INTEGER
  40.              The number of linear equations, i.e., the order of the matrix A.
  41.              N >= 0.
  42.  
  43.      NRHS    (input) INTEGER
  44.              The number of right hand sides, i.e., the number of columns of
  45.              the matrix B.  NRHS >= 0.
  46.  
  47.      AP      (input/output) DOUBLE PRECISION array, dimension (N*(N+1)/2)
  48.              On entry, the upper or lower triangle of the symmetric matrix A,
  49.              packed columnwise in a linear array.  The j-th column of A is
  50.              stored in the array AP as follows:  if UPLO = 'U', AP(i + (j-
  51.              1)*j/2) = A(i,j) for 1<=i<=j; if UPLO = 'L', AP(i + (j-1)*(2n-
  52.              j)/2) = A(i,j) for j<=i<=n.  See below for further details.
  53.  
  54.              On exit, if INFO = 0, the factor U or L from the Cholesky
  55.              factorization A = U**T*U or A = L*L**T, in the same storage
  56.              format as A.
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. DDDDPPPPPPPPSSSSVVVV((((3333FFFF))))                                                            DDDDPPPPPPPPSSSSVVVV((((3333FFFF))))
  71.  
  72.  
  73.  
  74.      B       (input/output) DOUBLE PRECISION array, dimension (LDB,NRHS)
  75.              On entry, the N-by-NRHS right hand side matrix B.  On exit, if
  76.              INFO = 0, the N-by-NRHS solution matrix X.
  77.  
  78.      LDB     (input) INTEGER
  79.              The leading dimension of the array B.  LDB >= max(1,N).
  80.  
  81.      INFO    (output) INTEGER
  82.              = 0:  successful exit
  83.              < 0:  if INFO = -i, the i-th argument had an illegal value
  84.              > 0:  if INFO = i, the leading minor of order i of A is not
  85.              positive definite, so the factorization could not be completed,
  86.              and the solution has not been computed.
  87.  
  88. FFFFUUUURRRRTTTTHHHHEEEERRRR DDDDEEEETTTTAAAAIIIILLLLSSSS
  89.      The packed storage scheme is illustrated by the following example when N
  90.      = 4, UPLO = 'U':
  91.  
  92.      Two-dimensional storage of the symmetric matrix A:
  93.  
  94.         a11 a12 a13 a14
  95.             a22 a23 a24
  96.                 a33 a34     (aij = conjg(aji))
  97.                     a44
  98.  
  99.      Packed storage of the upper triangle of A:
  100.  
  101.      AP = [ a11, a12, a22, a13, a23, a33, a14, a24, a34, a44 ]
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.